<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        
    </style>
</head>
<body>
    
</body>
<script>

    var arr = [{
        name: "张三",
        age: 19,
        sex: "男",
        hobby: ["篮球", "喝酒", "乒乓球"],
        integral: 90
    },{
        name: "大张四",
        age: 25,
        sex: "男",
        hobby: ["抽烟", "足球", "乒乓球"],
        integral: 80
    },{
        name: "王五",
        age: 22,
        sex: "女",
        hobby: ["篮球", "烫头", "唱歌"],
        integral: 100
    },{
        name: "张六",
        age: 18,
        sex: "女",
        hobby: ["跳舞", "足球", "rap"],
        integral: 85
    }]

    // 1. 筛选出所有喜欢打篮球的人员，以数组形式存放
    var res = arr.slice(0).filter(function(val){
        return val.hobby.indexOf("篮球") !== -1;
    })
    console.log(res);

    // 2. 筛选出所有姓张的人员，以数组形式存放
    var res = arr.slice(0).filter(function(val){
        return val.name[0] === '张';
    })
    console.log(res)
    
    // 3. 筛选出所有名字含张的人员，以数组形式存放
    var res = arr.slice(0).filter(function(val){
        return val.name.indexOf("张") !== -1;
    })
    console.log(res)

    // 4. 算出所有人员的总分，数值
    var sum = arr.slice(0).reduce(function(prev, val){
        return prev + val.integral
    }, 0);
    console.log(sum);

    // 5. 按照年龄升序排序，以新数组展示
    var res = arr.slice(0).sort(function(a, b){
        return a.age - b.age;
    })
    console.log(res);

    // 6. 给所有的男性的积分-10分，修改原数组
    arr.forEach(function(val){
        if(val.sex === "男"){
            val.integral -= 10;
        }
    })
    console.log(arr);

    // =========

    var arr = [80, 70, 100, 60];
    var res = arr.map(function(val){
        return val - 10;
    })
    console.log(res);


    // forEach是否会改变原数组？


</script>
</html>